This invention relates generally to the storage of data in electronic memories, and more particularly the invention relates to a read only memory (ROM) in which data is stored to reduce the time necessary in accessing the data.
A ROM is a read only memory in that the contents of the memory are permanently fixed in the memory during the manufacture thereof. The position of a particular bit of data is determined by row and column location. Typically, a "1" or "0" state is recorded by the presence or absence of an MOS transistor at the bit address. For example, the presence of the transistor can be a "1" and the absence of a transistor can be a "0". The programming of the data in the ROM is typically hard coded via a fabrication mask at the factory.
In reading data from a memory, time is required to take the applied address and transform it into row and column, obtain the data from the addressed location, and propagate the data to the output pin. This total time is known as the access time. A major component of the access time is the time required to energize the row information. This is also known as the wordline delay and is actually an RC time constant. When going to larger density devices it is necessary to increase the length of the wordline. Doubling the length of a wordline doubles the total resistance and the total capacitance making for a 4RC time constant. A four-fold increase in wordline delay is intolerable, and efforts have been made to reduce the time constant by circuit techniques.
One such technique is disclosed by Rossbach et al. in "An Optimizing XROM Silcon Compiler", IEEE 1987 Custom Integrated Circuits Conference, pages 13-15. This technique recognizes that a programmed "1" for the presence of a transistor adds more capacitance to the wordline than does a "0" or lack of a transistor. Rossbach et al. propose flipping all bits on a wordline if the number of programmed "1"s is more than half the total number of bits. In reading out data from the wordline the data must again be flipped to accurately read the data.